package com.ruoyi.business.service;

import com.ruoyi.bizsys.domain.AppDeviceFingerprint;
import com.ruoyi.bizsys.domain.AppDeviceInfo;
import com.ruoyi.bizsys.domain.CreditAccount;
import com.ruoyi.bizsys.domain.LoanIou;
import com.ruoyi.business.domain.CustomerVO;
import com.ruoyi.business.domain.BusinessMarketUser;

import java.util.List;
import java.util.Map;

/**
 * @Author: Jamnsin
 * @Date: 2021/3/1 10:43 上午
 */
public interface IBusinessService {

    void initCust();

    void backUpCreditAccount(CreditAccount creditAccount);

    void bankUpLoanInfo(LoanIou loanIou);

    /**
     * 获取客户信息，自定义sql 需要什么字段自行添加
     * @param custId
     * @return
     */
    CustomerVO getCustomerInfo(String custId);


    /**
     * 获取未初始化设备指纹的deviceInfo
     * @return
     */
    List<AppDeviceInfo> getDeviceOfUninitialized();

    /**
     * 批量新增
     * @param objects
     */
    int saveBatchDeviceFingerprints(List<AppDeviceFingerprint> objects);

    /**
     * 获取设备首次提交版本
     * @param userUuid
     * @return
     */
    String getDeviceFirstVersion(String userUuid);

    /**
     * 创建设备品牌映射map
     * @return
     */
    Map<String,String> getDeviceMapperMaps();

    /**
     * 创建设备品牌映射
     * @param phoneBrand
     * @return
     */
    String getDeviceMapper(String phoneBrand);

    /**
     * 更新客户信用评级
     * @param creditRating
     * @param customerNo
     * @return
     */
    int upCreditRatingByCustNo(String creditRating, String customerNo);

    /**
     * 修改营销用户信息
     * @param marketUser
     */
    void loanOrCreditUpdateMarketUserInfo(BusinessMarketUser marketUser);
}
